void main(List<String> args) {
  // 1. 正常代码
  String intro = '你好呀';
  intro = '777';
  print(intro);

  // 2. 无法正常执行的代码：在代码编译器就会报错，也不能显式的初始化赋值为 null
  // String message;
  // print(message);

  // 3. 解决办法：使用 ? 显示的指定变量可以为空
  // String? message;
  // print(message);

  // 4. 添加了空安全机制后就可以显式初始化值为null了
  String? message = null;
  print(message);

  // 5. 可以使用为空的变量
  // 如果intro没有值则返回null，有值则返回正常的结果
  message = 'nihaoya';
  print(message);
}
